const MAX_LIMIT = 10
const db = wx.cloud.database()
Page({

	/**
	 * 页面的初始数据
	 */
	data: {
		publishList: [], // 发布列表
		topIconIsShow: false, // 控制滚动到top的icon的显示
		modalShow: false, // 控制login显示
		isShow: true, // 控制有无内容
	},

	/**
	 * 生命周期函数--监听页面加载
	 */
	onLoad: function(options) {
		this._getOwnPublishList()
	},
	_getOwnPublishList() { // 获取发布列表
		wx.showLoading({
			title: '正在获取中...',
			mask: true
		})
		let start = this.data.publishList.length
		wx.cloud.callFunction({
			name: 'shop-comment',
			data: {
				$url: 'getOwnList',
				start: start, 
				count: MAX_LIMIT
			}
		}).then(res => {
			// console.log(res)
			this.setData({ // 上拉加载 拼接
				publishList: this.data.publishList.concat(res.result)
			})
			this.showEmpty()
			wx.hideLoading()
			wx.stopPullDownRefresh()
		})
	},
	goToDetail(event) {
		let commentId = event.target.dataset.commentid
		wx.navigateTo({
			url: `/pages/commentdetail/commentdetail?commentId=${commentId}`
		})
	},
	goToMain() {
		wx.switchTab({
			url: '/pages/main/main'
		})
	},
	toDel(e) { // 删除事件
		// console.log(1)
		// console.log(e)
		const id = e.target.dataset.publishid
		let that = this
		wx.showModal({
			title: '提示',
			content: '是否删除这条信息？',
			success(res){
				// console.log(that)
				if(res.confirm){
					db.collection('blog').where({
						_id: id
					})
					.remove() // 小程序端 remove只能删除一条数据
					.then(res => {
						// console.log(that)
						// console.log(that.data.commentList)
						//console.log(res)
						that.setData({
							publishList: []
						})
						that._getOwnPublishList()
					})
				}
			}
		})
	},
	toPublish() { // 判断是否登录 登录了就拿到userInfo
		// wx.getSetting({ // 
		// 	success: res => {
		// 		if (res.authSetting["scope.userInfo"]) {
		// 			// wx.getUserInfo({
		// 			// 	success: res => {
		// 			// 		this.sucLogin({
		// 			// 			detail: res.userInfo
		// 			// 		})
		// 			// 	}
		// 			// })
		// 			wx.getUserProfile({
		// 				 desc: '用于获取用户信息',
		// 				 success: res => {
		// 					 // console.log(res)
		// 					 wx.setStorageSync('USERINFO', res)
		// 					 this.sucLogin({
		// 						detail: res.userInfo
		// 					 })
		// 				 }
		// 			})
		// 		} else {
		// 			this.setData({ // 没登录就打开登录框
		// 				modalShow: true
		// 			})
		// 		}
		// 	}
		// })
		if (!wx.getStorageSync('USERINFO')) {
			wx.getSetting({ // wx.getUserInfo 拿不到信息了 需要用wx.getUserProfile
				success: res => {
					if (res.authSetting["scope.userInfo"]) {
						// wx.getUserInfo({
						// 	success: res => {
						// 		console.log(res)
						// 		this.sucLogin({
						// 			detail: res.userInfo
						// 		})
						// 	}
						// })
						 wx.getUserProfile({
							 desc: '用于获取用户信息',
							 success: res => {
								 // console.log(res)
								 wx.setStorageSync('USERINFO', res)
								 this.sucLogin({
								 	detail: res.userInfo
								 })
							 }
						 })
					} else {
						this.setData({ // 没登录就打开登录框
							modalShow: true 
						})
					}
				}
			})
		} else {
			let res = wx.getStorageSync('USERINFO')
			// console.log(res)
			this.sucLogin({
				detail: res.userInfo
			})
		}
	},
	sucLogin(event) { // 已经登录 就跳转到发布页面
		// console.log(event)
		let detail = event.detail
		wx.navigateTo({
			url: `/pages/publishpage/publishpage?nickName=${detail.nickName}&avatarUrl=${detail.avatarUrl}`
		})
	},
	showEmpty () { // 显示是否为空
		let publishListLength = this.data.publishList.length
		// console.log(commentListLength)
		if (publishListLength > 0) {
			this.setData({
				isShow: true
			})
		} else {
			this.setData({
				isShow: false
			})
		}
		// console.log(this.data.isShow)
	},
	onShareAppMessage(e) {
		// console.log(e)
		const id = e.target.dataset.commentid
		const name = e.target.dataset.comment.nickName
		return {
			title: name,
			path: `/pages/commentdetail/commentdetail?commentId=${id}`
		}
	},
	onPullDownRefresh() {
		this.setData({
			publishList: []
		})
		this._getOwnPublishList()
	},
	onReachBottom() {
		this._getOwnPublishList()
	},
	onPageScroll(e) { // page页面的监听滚动的事件
		if (e.scrollTop > 100) { // 如果滚动大于100 就显示top组件
			this.setData({
				topIconIsShow: true
			});
		} else {
			this.setData({
				topIconIsShow: false
			});
		}
	}
})
